home *** CD-ROM | disk | FTP | other *** search
/ Champak 138 / Volume 138 Aug 19 2011 - Damaged.iso / Games / shadez.swf / scripts / Local / Draw / CBitmapStripManager.as < prev    next >
Text File  |  2011-08-19  |  4KB  |  131 lines

  1. package Local.Draw
  2. {
  3.    import Local.Game.Level.CLevelData;
  4.    import STC9.System.CProfiler;
  5.    import flash.geom.Point;
  6.    
  7.    public class CBitmapStripManager extends CBitmapStripPlane
  8.    {
  9.       
  10.       public static var mFilters:Array;
  11.        
  12.       
  13.       var _Position:Point;
  14.       
  15.       public function CBitmapStripManager()
  16.       {
  17.          super(2,2);
  18.          mStrips = new Object();
  19.          _Position = new Point();
  20.          mFilters = new Terrain_Filter().mcFilter.filters;
  21.          AddStrips(new CBitmapStrips("ground",new CLevelData.mcTerrainGround(),1,false,false,false));
  22.          AddStrips(new CBitmapStrips("decor",new CLevelData.mcTerrainGroundDecor(),1,false,false,true));
  23.          AddStrips(new CBitmapStrips("near",new CLevelData.mcTerrainNear(),0.5,false,true,true));
  24.          AddStrips(new CBitmapStrips("far",new CLevelData.mcTerrainFar(),0.25,false,true,true));
  25.          AddStrips(new CBitmapStrips("sky",new CLevelData.mcTerrainSky(),0.1,true,true,false));
  26.          CProfiler.AddDebug("mem strips",String(Math.ceil(mMemSize / 1000)) + "kb");
  27.       }
  28.       
  29.       public function set mPosition(param1:Point) : void
  30.       {
  31.          _Position.x = param1.x;
  32.          _Position.y = param1.y;
  33.          ValidatePosition();
  34.       }
  35.       
  36.       public function Scroll(param1:Number = 0, param2:Number = 0) : void
  37.       {
  38.          if(true)
  39.          {
  40.             mPosition = new Point(_Position.x + param1,_Position.y + param2);
  41.          }
  42.       }
  43.       
  44.       public function get mMemSize() : uint
  45.       {
  46.          var _loc1_:* = uint(0);
  47.          var _loc2_:CBitmapStrips = null;
  48.          _loc1_ = uint(0);
  49.          for each(_loc2_ in mStrips)
  50.          {
  51.             ┬º┬ºpush(_loc1_);
  52.             if(true)
  53.             {
  54.                ┬º┬ºpush(uint(┬º┬ºpop() + _loc2_.mMemSize));
  55.             }
  56.             _loc1_ = ┬º┬ºpop();
  57.          }
  58.          return _loc1_;
  59.       }
  60.       
  61.       public function Process() : void
  62.       {
  63.          mStrips["sky"].mOffsetX += 11;
  64.       }
  65.       
  66.       public function get mFineAltitudes() : Array
  67.       {
  68.          return mStrips["ground"].mFineAltitudes;
  69.       }
  70.       
  71.       private function ValidatePosition() : void
  72.       {
  73.          var _loc1_:CBitmapStrips = null;
  74.          if(_Position.x < 0)
  75.          {
  76.             _Position.x = 0;
  77.          }
  78.          else if(_Position.x > mStrips["ground"].mSize.x - mBMD.width)
  79.          {
  80.             _Position.x = mStrips["ground"].mSize.x - mBMD.width;
  81.          }
  82.          for each(_loc1_ in mStrips)
  83.          {
  84.             _loc1_.UpdatePosition(_Position);
  85.          }
  86.       }
  87.       
  88.       public function get mAltitudes() : Array
  89.       {
  90.          return mStrips["ground"].mAltitudes;
  91.       }
  92.       
  93.       public function StartRender() : void
  94.       {
  95.          CProfiler.StartProfile("Strip.StartRender");
  96.          Clear();
  97.          StackStrips(mStrips["ground"]);
  98.          StackStrips(mStrips["decor"]);
  99.          StackStrips(mStrips["near"]);
  100.          StackStrips(mStrips["far"]);
  101.          StackStrips(mStrips["sky"]);
  102.          CProfiler.StopProfile("Strip.StartRender");
  103.       }
  104.       
  105.       public function get mPosition() : Point
  106.       {
  107.          return _Position;
  108.       }
  109.       
  110.       public function EndRender() : void
  111.       {
  112.          CProfiler.StartProfile("Strip.EndRender");
  113.          RenderStacks(["ground"]);
  114.          CProfiler.StopProfile("Strip.EndRender");
  115.       }
  116.       
  117.       public function AddStrips(param1:CBitmapStrips) : void
  118.       {
  119.          mStrips[param1.mName] = param1;
  120.          mDrawStacks[param1.mName] = new Array();
  121.       }
  122.       
  123.       public function Render() : void
  124.       {
  125.          CProfiler.StartProfile("Strip.Render");
  126.          RenderStacks(["sky","far","near","decor"]);
  127.          CProfiler.StopProfile("Strip.Render");
  128.       }
  129.    }
  130. }
  131.